home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MIDICraft's MIDINET CD-ROM
/
MIDICraft's MIDINET CD-ROM.iso
/
MIDTOOLS
/
MDF.DOC
< prev
next >
Wrap
Text File
|
1994-04-27
|
8KB
|
187 lines
MIDI DATA FILER ver 3.2, April 1994 by Kai Risku
================================================
This is a very easy-to-use program that will send and receive midi sysex
dumps on a PC. The dumps are stored as raw files and are compatible with
sysex dumps used by most sequencing programs. The dumps can be several
hundred kilobytes in size (limited by available memory).
The program requires a MPU-compatible midi interface and can be
configured for any base address (interrupts are not used at all).
How to save MIDI-data to a file:
================================
You just start MDF with a non-existent filename as argument. When MDF
reports 'Start dump' you can start a sysex-dump manually from your
synthesizer or press any key to abort. A dot will be displayed for every
sysex block received (so you can see that the computer is actually
getting some data).
After the dump is done, MDF will report how many bytes have been
received, save those in the file you specified and exit automatically.
The amount of data you can receive is limited by the available memory
below 640k (minus about 40k for MDF itself).
How to send the data back to the synthesizer:
=============================================
Oh, you have already guessed that one, but I just want to say it anyway.
Run MDF with the name of the file you want to send to your synthesizer
as the argument. MDF will send the contents of the file and inform you
of how many bytes has been sent. You can press ESC if you wish to abort
the transfer.
Configuring MDF using the MDF.INI file:
=======================================
When starting up MDF, the program will look for a file named MDF.INI in
the same directory as MDF.EXE is in. If the INI-file cannot be found,
one will be created using some default values. The file is in plain
ASCII format and can be edited with any ascii editor. These are the
valid options and what they specify:
Delay1=n
where n is a decimal integer specifying the delay between
each byte sent. A larger value means slower sending.
Delay2=n
where n is a decimal integer specifying a delay in
milliseconds between each sysex block sent.
Timeout=n
where n is a decimal integer in milliseconds specifying how
long MDF should wait for more data before finishing.
Extension=ext
where ext is a filename extension with a maximum of three
characters. This extension will be used if MDF is invoked
with a filename with no extension. If this option is
missing, the default extension will be SYX. Using filenames
with no extension at all requires either a period after the
filename on the command line, or removing the characters to
the right of the equal sign in MDF.INI.
Port=addr
where addr is the address of the midi interface. The address
can be given in decimal or hex. To specify hex mode, you
must either have '0x' before the address, or the character
'h' after. The default address can be written these ways;
Port=816, Port=0x330 or Port=330h
SysexOnly=boolean
where boolean is one of '1', '0', 'True', 'False', 'Yes' or
'No' (only the first character is used and case is not
significant). This setting controls if all incoming data
should be put in the file, or only proper sysex data (only
data between sysex start and end markers). This option is by
default set to True, but you can change it if you want to
save other than sysex data to a file.
If it does not work:
====================
- If your MPU-compatible interface is not installed on the default
port address 330h, you must set the correct address in MDF.INI.
- some synthesizers can choke if the computer dumps data too fast.
Increase the delays specified in MDF.INI to slow down the sending.
- There can be some problems when receiving a dump if the
synthesizer dumps data too fast and you have a slow computer.
You should therefore keep an eye on the size of the received data
as this will be too small if data has been lost (or the dump may
vary in size, depending on the phase of the moon and other
non-obvious factors).
- You cannot use handshake-dumps with this program, because
practically every synth has its own format for this. Make sure
that you start a one-way dump from your synthesizer.
Revision history
================
New in version 3.2:
Added option to filter out any data not enclosed in a proper
sysex-format (enclosed by 0xF0 and 0xF7).
New in version 3.1:
Fixed bug that occasionally saved some garbage at the
end of the file when receiving. Tweaked the documentation.
New in version 3.0:
Sysex dumps are no longer limited to 64 kbytes. Receiving
sysex data is only limited by your dos memory (below 640k).
The receive timeout can now be specified in MDF.INI.
Program selfcheck added and large portions of the code
rewritten to improve the program in several ways.
New in version 2.6:
The address of the midi interface can be set in MDF.INI
New in version 2.5:
You can now change the default filename extension
using MDF.INI
New in version 2.4:
Ctrl-C is now trapped, so you cannot break out of the
program and leave the midi interface in UART mode.
New in version 2.3:
Added an INI-file for user-configurable delays while
sending. Modified text output and removed some
unnecessary texts.
New in version 2.2:
More code cleanup. Incoming data during sysex-send
to synthesizer will be sent back out when possible.
Error-handling improved.
New in version 2.1:
The default extension MDF for files created was changed
to SYX for compatibility with other software.
Active sensing has earlier caused some trouble, but
this has now been fixed as well as a small bug causing
a time-out if you don't start the dump fast enough
after you started the program.
New in version 2.0:
Document added (this piece of text). Improved routines
with faster code. Corrected some minor bugs. This was
the first "official" release.
#include <std_disclaimer.h>:
============================
Copyright (c) 1990-1994 Kai Risku
MDF is offered to you "AS IS" without any warranty. This software has
been thoroughly tested but no guarantee is given that it will work on
every computer. The copyright owner may not be held liable for any
damages, direct or consequential, which may result from the the use of
this program.
This program is freely distributable. You may use the software and
share it with all your friends (and foes) as long as the program is
supplied in its original, unmodified form, which includes this
documentation. This program must not be distributed for profit.
If you have any questions, ideas, suggestions for improvements or if
you are interested in the source then feel free to contact me...
A short email or a postcard would be appreciated as it tells me how
MDF is spread around the world as well as the fact that someone is
actually using my program!
Snailmail: Kai Risku Email (internet): Kai.Risku@hut.fi
Kronvik
65410 Sundom Email strongly preferred!!!
Finland